package com.ybl.store.backend.service.store;

import com.baomidou.mybatisplus.extension.service.IService;
import com.ybl.store.backend.dao.entity.store.ProductDO;
import com.ybl.store.backend.dto.req.store.ProductSaveReqDTO;
import com.ybl.store.backend.dto.req.store.ProductUpdateReqDTO;
import com.ybl.store.backend.dto.resp.store.ProductNameRespDTO;
import com.ybl.store.common.entity.ListRespDTO;

public interface ProductService extends IService<ProductDO> {

    void saveProduct(ProductSaveReqDTO requestParam);

    void deleteProduct(Long id);

    void updateProduct(ProductUpdateReqDTO requestParam);

    void banProduct(Long id, Integer banFlag);

    ListRespDTO<ProductDO> pageProduct(Integer pn, Integer ps, String name);

    ListRespDTO<ProductNameRespDTO> listProductName();

    void addNumber(Long productId, Integer number);

    void subNumber(Long productId, Integer number);
}
